/*! fancyBox v2.0.5 fancyapps.com | fancyapps.com/fancybox/#license */
(function (t, m, e) {
    var l = e(t), q = e(m), a = e.fancybox = function () {
        a.open.apply(this, arguments)
    }, r = !1, s = "undefined" !== typeof m.createTouch;
    e.extend(a, {version:"2.0.5", defaults:{padding:15, margin:20, width:800, height:600, minWidth:100, minHeight:100, maxWidth:9999, maxHeight:9999, autoSize:!0, autoResize:!s, autoCenter:!s, fitToView:!0, aspectRatio:!1, topRatio:0.5, fixed:!(e.browser.msie && 6 >= e.browser.version) && !s, scrolling:"auto", wrapCSS:"fancybox-default", arrows:!0, closeBtn:!0, closeClick:!1, nextClick:!1, mouseWheel:!0,
        autoPlay:!1, playSpeed:3E3, preload:3, modal:!1, loop:!0, ajax:{dataType:"html", headers:{"X-fancyBox":!0}}, keys:{next:[13, 32, 34, 39, 40], prev:[8, 33, 37, 38], close:[27]}, tpl:{wrap:'<div class="fancybox-wrap"><div class="fancybox-outer"><div class="fancybox-inner"></div></div></div>', image:'<img class="fancybox-image" src="{href}" alt="" />', iframe:'<iframe class="fancybox-iframe" name="fancybox-frame{rnd}" frameborder="0" hspace="0"' + (e.browser.msie ? ' allowtransparency="true"' : "") + "></iframe>", swf:'<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%"><param name="wmode" value="transparent" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{href}" /><embed src="{href}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="100%" height="100%" wmode="transparent"></embed></object>',
            error:'<p class="fancybox-error">The requested content cannot be loaded.<br/>Please try again later.</p>', closeBtn:'<div title="Close" class="fancybox-item fancybox-close"></div>', next:'<a title="Next" class="fancybox-nav fancybox-next"><span></span></a>', prev:'<a title="Previous" class="fancybox-nav fancybox-prev"><span></span></a>'}, openEffect:"fade", openSpeed:250, openEasing:"swing", openOpacity:!0, openMethod:"zoomIn", closeEffect:"fade", closeSpeed:250, closeEasing:"swing", closeOpacity:!0, closeMethod:"zoomOut",
        nextEffect:"elastic", nextSpeed:300, nextEasing:"swing", nextMethod:"changeIn", prevEffect:"elastic", prevSpeed:300, prevEasing:"swing", prevMethod:"changeOut", helpers:{overlay:{speedIn:0, speedOut:300, opacity:0.8, css:{cursor:"pointer"}, closeClick:!0}, title:{type:"float"}}}, group:{}, opts:{}, coming:null, current:null, isOpen:!1, isOpened:!1, wrap:null, outer:null, inner:null, player:{timer:null, isActive:!1}, ajaxLoad:null, imgPreload:null, transitions:{}, helpers:{}, open:function (b, c) {
        a.close(!0);
        b && !e.isArray(b) && (b =
            b instanceof e ? e(b).get() : [b]);
        a.isActive = !0;
        a.opts = e.extend(!0, {}, a.defaults, c);
        e.isPlainObject(c) && "undefined" !== typeof c.keys && (a.opts.keys = c.keys ? e.extend({}, a.defaults.keys, c.keys) : !1);
        a.group = b;
        a._start(a.opts.index || 0)
    }, cancel:function () {
        a.coming && !1 === a.trigger("onCancel") || (a.coming = null, a.hideLoading(), a.ajaxLoad && a.ajaxLoad.abort(), a.ajaxLoad = null, a.imgPreload && (a.imgPreload.onload = a.imgPreload.onabort = a.imgPreload.onerror = null))
    }, close:function (b) {
        a.cancel();
        a.current && !1 !== a.trigger("beforeClose") &&
        (a.unbindEvents(), !a.isOpen || b && !0 === b[0] ? (e(".fancybox-wrap").stop().trigger("onReset").remove(), a._afterZoomOut()) : (a.isOpen = a.isOpened = !1, e(".fancybox-item, .fancybox-nav").remove(), a.wrap.stop(!0).removeClass("fancybox-opened"), a.inner.css("overflow", "hidden"), a.transitions[a.current.closeMethod]()))
    }, play:function (b) {
        var c = function () {
            clearTimeout(a.player.timer)
        }, d = function () {
            c();
            a.current && a.player.isActive && (a.player.timer = setTimeout(a.next, a.current.playSpeed))
        }, g = function () {
            c();
            e("body").unbind(".player");
            a.player.isActive = !1;
            a.trigger("onPlayEnd")
        };
        if (a.player.isActive || b && !1 === b[0])g(); else if (a.current && (a.current.loop || a.current.index < a.group.length - 1))a.player.isActive = !0, e("body").bind({"afterShow.player onUpdate.player":d, "onCancel.player beforeClose.player":g, "beforeLoad.player":c}), d(), a.trigger("onPlayStart")
    }, next:function () {
        a.current && a.jumpto(a.current.index + 1)
    }, prev:function () {
        a.current && a.jumpto(a.current.index - 1)
    }, jumpto:function (b) {
        a.current && (b = parseInt(b, 10), 1 < a.group.length && a.current.loop &&
            (b >= a.group.length ? b = 0 : 0 > b && (b = a.group.length - 1)), "undefined" !== typeof a.group[b] && (a.cancel(), a._start(b)))
    }, reposition:function (b) {
        a.isOpen && a.wrap.css(a._getPosition(b))
    }, update:function (b) {
        a.isOpen && (r || setTimeout(function () {
            var c = a.current;
            if (r && (r = !1, c)) {
                if (c.autoResize || b && "orientationchange" === b.type)c.autoSize && (a.inner.height("auto"), c.height = a.inner.height()), a._setDimension(), c.canGrow && a.inner.height("auto");
                c.autoCenter && a.reposition();
                a.trigger("onUpdate")
            }
        }, 100), r = !0)
    }, toggle:function () {
        a.isOpen &&
        (a.current.fitToView = !a.current.fitToView, a.update())
    }, hideLoading:function () {
        e("#fancybox-loading").remove()
    }, showLoading:function () {
        a.hideLoading();
        e('<div id="fancybox-loading"><div></div></div>').click(a.cancel).appendTo("body")
    }, getViewport:function () {
        return{x:l.scrollLeft(), y:l.scrollTop(), w:l.width(), h:l.height()}
    }, unbindEvents:function () {
        a.wrap && a.wrap.unbind(".fb");
        q.unbind(".fb");
        l.unbind(".fb")
    }, bindEvents:function () {
        var b = a.current, c = b.keys;
        b && (l.bind("resize.fb, orientationchange.fb",
            a.update), c && q.bind("keydown.fb", function (b) {
            var g;
            !b.ctrlKey && !b.altKey && !b.shiftKey && !b.metaKey && 0 > e.inArray(b.target.tagName.toLowerCase(), ["input", "textarea", "select", "button"]) && (g = b.keyCode, -1 < e.inArray(g, c.close) ? (a.close(), b.preventDefault()) : -1 < e.inArray(g, c.next) ? (a.next(), b.preventDefault()) : -1 < e.inArray(g, c.prev) && (a.prev(), b.preventDefault()))
        }), e.fn.mousewheel && b.mouseWheel && 1 < a.group.length && a.wrap.bind("mousewheel.fb", function (b, c) {
            var f = e(b.target).get(0);
            if (0 === f.clientHeight || f.scrollHeight ===
                f.clientHeight && f.scrollWidth === f.clientWidth)b.preventDefault(), a[0 < c ? "prev" : "next"]()
        }))
    }, trigger:function (b) {
        var c, d = a[-1 < e.inArray(b, ["onCancel", "beforeLoad", "afterLoad"]) ? "coming" : "current"];
        if (d) {
            e.isFunction(d[b]) && (c = d[b].apply(d, Array.prototype.slice.call(arguments, 1)));
            if (!1 === c)return!1;
            d.helpers && e.each(d.helpers, function (c, f) {
                if (f && "undefined" !== typeof a.helpers[c] && e.isFunction(a.helpers[c][b]))a.helpers[c][b](f, d)
            });
            e.event.trigger(b + ".fb")
        }
    }, isImage:function (a) {
        return a && a.match(/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i)
    },
        isSWF:function (a) {
            return a && a.match(/\.(swf)(.*)?$/i)
        }, _start:function (b) {
            var c = {}, d = a.group[b] || null, g, f, k;
            if (d && (d.nodeType || d instanceof e))g = !0, e.metadata && (c = e(d).metadata());
            c = e.extend(!0, {}, a.opts, {index:b, element:d}, e.isPlainObject(d) ? d : c);
            e.each(["href", "title", "content", "type"], function (b, f) {
                c[f] = a.opts[f] || g && e(d).attr(f) || c[f] || null
            });
            "number" === typeof c.margin && (c.margin = [c.margin, c.margin, c.margin, c.margin]);
            c.modal && e.extend(!0, c, {closeBtn:!1, closeClick:!1, nextClick:!1, arrows:!1, mouseWheel:!1,
                keys:null, helpers:{overlay:{css:{cursor:"auto"}, closeClick:!1}}});
            a.coming = c;
            if (!1 === a.trigger("beforeLoad"))a.coming = null; else {
                f = c.type;
                b = c.href || d;
                f || (g && (k = e(d).data("fancybox-type"), !k && d.className && (f = (k = d.className.match(/fancybox\.(\w+)/)) ? k[1] : null)), !f && "string" === e.type(b) && (a.isImage(b) ? f = "image" : a.isSWF(b) ? f = "swf" : b.match(/^#/) && (f = "inline")), f || (f = g ? "inline" : "html"), c.type = f);
                if ("inline" === f || "html" === f) {
                    if (c.content || (c.content = "inline" === f ? e("string" === e.type(b) ? b.replace(/.*(?=#[^\s]+$)/,
                        "") : b) : d), !c.content || !c.content.length)f = null
                } else b || (f = null);
                c.group = a.group;
                c.isDom = g;
                c.href = b;
                "image" === f ? a._loadImage() : "ajax" === f ? a._loadAjax() : f ? a._afterLoad() : a._error("type")
            }
        }, _error:function (b) {
            a.hideLoading();
            e.extend(a.coming, {type:"html", autoSize:!0, minHeight:0, hasError:b, content:a.coming.tpl.error});
            a._afterLoad()
        }, _loadImage:function () {
            a.imgPreload = new Image;
            a.imgPreload.onload = function () {
                this.onload = this.onerror = null;
                a.coming.width = this.width;
                a.coming.height = this.height;
                a._afterLoad()
            };
            a.imgPreload.onerror = function () {
                this.onload = this.onerror = null;
                a._error("image")
            };
            a.imgPreload.src = a.coming.href;
            a.imgPreload.width || a.showLoading()
        }, _loadAjax:function () {
            a.showLoading();
            a.ajaxLoad = e.ajax(e.extend({}, a.coming.ajax, {url:a.coming.href, error:function (b, c) {
                "abort" !== c ? a._error("ajax", b) : a.hideLoading()
            }, success:function (b, c) {
                "success" === c && (a.coming.content = b, a._afterLoad())
            }}))
        }, _preloadImages:function () {
            var b = a.group, c = a.current, d = b.length, g;
            if (c.preload && !(2 > b.length))for (var f = 1; f <=
                Math.min(c.preload, d - 1); f++)if (g = b[(c.index + f) % d], g = e(g).attr("href") || g)(new Image).src = g
        }, _afterLoad:function () {
            a.hideLoading();
            !a.coming || !1 === a.trigger("afterLoad", a.current) ? a.coming = !1 : (a.isOpened ? (e(".fancybox-item").remove(), a.wrap.stop(!0).removeClass("fancybox-opened"), a.inner.css("overflow", "hidden"), a.transitions[a.current.prevMethod]()) : (e(".fancybox-wrap").stop().trigger("onReset").remove(), a.trigger("afterClose")), a.unbindEvents(), a.isOpen = !1, a.current = a.coming, a.wrap = e(a.current.tpl.wrap).addClass("fancybox-" +
                (s ? "mobile" : "desktop") + " fancybox-tmp " + a.current.wrapCSS).appendTo("body"), a.outer = e(".fancybox-outer", a.wrap).css("padding", a.current.padding + "px"), a.inner = e(".fancybox-inner", a.wrap), a._setContent())
        }, _setContent:function () {
            var b, c, d = a.current, g = d.type;
            switch (g) {
                case "inline":
                case "ajax":
                case "html":
                    b = d.content;
                    b instanceof e && (b = b.show().detach(), b.parent().hasClass("fancybox-inner") && b.parents(".fancybox-wrap").trigger("onReset").remove(), e(a.wrap).bind("onReset", function () {
                        b.appendTo("body").hide()
                    }));
                    d.autoSize && (c = e('<div class="fancybox-tmp ' + a.current.wrapCSS + '"></div>').appendTo("body").append(b), d.width = c.width(), d.height = c.height(), c.width(a.current.width), c.height() > d.height && (c.width(d.width + 1), d.width = c.width(), d.height = c.height()), b = c.contents().detach(), c.remove());
                    break;
                case "image":
                    b = d.tpl.image.replace("{href}", d.href);
                    d.aspectRatio = !0;
                    break;
                case "swf":
                    b = d.tpl.swf.replace(/\{width\}/g, d.width).replace(/\{height\}/g, d.height).replace(/\{href\}/g, d.href)
            }
            if ("iframe" === g) {
                b = e(d.tpl.iframe.replace("{rnd}",
                    (new Date).getTime())).attr("scrolling", d.scrolling);
                d.scrolling = "auto";
                if (d.autoSize) {
                    b.width(d.width);
                    a.showLoading();
                    b.data("ready", !1).appendTo(a.inner).bind({onCancel:function () {
                        e(this).unbind();
                        a._afterZoomOut()
                    }, load:function () {
                        var b = e(this), c;
                        try {
                            this.contentWindow.document.location && (c = b.contents().find("body").height() + 12, b.height(c))
                        } catch (g) {
                            d.autoSize = !1
                        }
                        !1 === b.data("ready") ? (a.hideLoading(), c && (a.current.height = c), a._beforeShow(), b.data("ready", !0)) : c && a.update()
                    }}).attr("src", d.href);
                    return
                }
                b.attr("src", d.href)
            } else if ("image" === g || "swf" === g)d.autoSize = !1, d.scrolling = "visible";
            a.inner.append(b);
            a._beforeShow()
        }, _beforeShow:function () {
            a.coming = null;
            a.trigger("beforeShow");
            a._setDimension();
            a.wrap.hide().removeClass("fancybox-tmp");
            a.bindEvents();
            a._preloadImages();
            a.transitions[a.isOpened ? a.current.nextMethod : a.current.openMethod]()
        }, _setDimension:function () {
            var b = a.wrap, c = a.outer, d = a.inner, g = a.current, f = a.getViewport(), k = g.margin, h = 2 * g.padding, i = g.width, j = g.height, o = g.maxWidth,
                l = g.maxHeight, p = g.minWidth, m = g.minHeight, n;
            f.w -= k[1] + k[3];
            f.h -= k[0] + k[2];
            -1 < i.toString().indexOf("%") && (i = (f.w - h) * parseFloat(i) / 100);
            -1 < j.toString().indexOf("%") && (j = (f.h - h) * parseFloat(j) / 100);
            k = i / j;
            i += h;
            j += h;
            g.fitToView && (o = Math.min(f.w, o), l = Math.min(f.h, l));
            g.aspectRatio ? (i > o && (i = o, j = (i - h) / k + h), j > l && (j = l, i = (j - h) * k + h), i < p && (i = p, j = (i - h) / k + h), j < m && (j = m, i = (j - h) * k + h)) : (i = Math.max(p, Math.min(i, o)), j = Math.max(m, Math.min(j, l)));
            i = Math.round(i);
            j = Math.round(j);
            e(b.add(c).add(d)).width("auto").height("auto");
            d.width(i - h).height(j - h);
            b.width(i);
            n = b.height();
            if (i > o || n > l)for (; (i > o || n > l) && i > p && n > m;)j -= 10, g.aspectRatio ? (i = Math.round((j - h) * k + h), i < p && (i = p, j = (i - h) / k + h)) : i -= 10, d.width(i - h).height(j - h), b.width(i), n = b.height();
            g.dim = {width:i, height:n};
            g.canGrow = g.autoSize && j > m && j < l;
            g.canShrink = !1;
            g.canExpand = !1;
            if (i - h < g.width || j - h < g.height)g.canExpand = !0; else if ((i > f.w || n > f.h) && i > p && j > m)g.canShrink = !0;
            b = n - h;
            a.innerSpace = b - d.height();
            a.outerSpace = b - c.height()
        }, _getPosition:function (b) {
            var c = a.current, d = a.getViewport(),
                e = c.margin, f = a.wrap.width() + e[1] + e[3], k = a.wrap.height() + e[0] + e[2], h = {position:"absolute", top:e[0] + d.y, left:e[3] + d.x};
            if (c.fixed && (!b || !1 === b[0]) && k <= d.h && f <= d.w)h = {position:"fixed", top:e[0], left:e[3]};
            h.top = Math.ceil(Math.max(h.top, h.top + (d.h - k) * c.topRatio)) + "px";
            h.left = Math.ceil(Math.max(h.left, h.left + 0.5 * (d.w - f))) + "px";
            return h
        }, _afterZoomIn:function () {
            var b = a.current, c = b.scrolling;
            a.isOpen = a.isOpened = !0;
            a.wrap.addClass("fancybox-opened").css("overflow", "visible");
            a.update();
            a.inner.css("overflow",
                "yes" === c ? "scroll" : "no" === c ? "hidden" : c);
            if (b.closeClick || b.nextClick)a.inner.css("cursor", "pointer").bind("click.fb", b.nextClick ? a.next : a.close);
            b.closeBtn && e(b.tpl.closeBtn).appendTo(a.outer).bind("click.fb", a.close);
            b.arrows && 1 < a.group.length && ((b.loop || 0 < b.index) && e(b.tpl.prev).appendTo(a.inner).bind("click.fb", a.prev), (b.loop || b.index < a.group.length - 1) && e(b.tpl.next).appendTo(a.inner).bind("click.fb", a.next));
            a.trigger("afterShow");
            a.opts.autoPlay && !a.player.isActive && (a.opts.autoPlay = !1, a.play())
        },
        _afterZoomOut:function () {
            a.trigger("afterClose");
            a.wrap.trigger("onReset").remove();
            e.extend(a, {group:{}, opts:{}, current:null, isActive:!1, isOpened:!1, isOpen:!1, wrap:null, outer:null, inner:null})
        }});
    a.transitions = {getOrigPosition:function () {
        var b = a.current, c = b.element, d = b.padding, g = e(b.orig), f = {}, k = 50, h = 50;
        !g.length && b.isDom && e(c).is(":visible") && (g = e(c).find("img:first"), g.length || (g = e(c)));
        g.length ? (f = g.offset(), g.is("img") && (k = g.outerWidth(), h = g.outerHeight())) : (b = a.getViewport(), f.top = b.y + 0.5 * (b.h -
            h), f.left = b.x + 0.5 * (b.w - k));
        return f = {top:Math.ceil(f.top - d) + "px", left:Math.ceil(f.left - d) + "px", width:Math.ceil(k + 2 * d) + "px", height:Math.ceil(h + 2 * d) + "px"}
    }, step:function (b, c) {
        var d, e, f;
        if ("width" === c.prop || "height" === c.prop)e = f = Math.ceil(b - 2 * a.current.padding), "height" === c.prop && (d = (b - c.start) / (c.end - c.start), c.start > c.end && (d = 1 - d), e -= a.innerSpace * d, f -= a.outerSpace * d), a.inner[c.prop](e), a.outer[c.prop](f)
    }, zoomIn:function () {
        var b = a.wrap, c = a.current, d, g;
        d = c.dim;
        "elastic" === c.openEffect ? (g = e.extend({},
            d, a._getPosition(!0)), delete g.position, d = this.getOrigPosition(), c.openOpacity && (d.opacity = 0, g.opacity = 1), a.outer.add(a.inner).width("auto").height("auto"), b.css(d).show(), b.animate(g, {duration:c.openSpeed, easing:c.openEasing, step:this.step, complete:a._afterZoomIn})) : (b.css(e.extend({}, d, a._getPosition())), "fade" === c.openEffect ? b.fadeIn(c.openSpeed, a._afterZoomIn) : (b.show(), a._afterZoomIn()))
    }, zoomOut:function () {
        var b = a.wrap, c = a.current, d;
        "elastic" === c.closeEffect ? ("fixed" === b.css("position") && b.css(a._getPosition(!0)),
            d = this.getOrigPosition(), c.closeOpacity && (d.opacity = 0), b.animate(d, {duration:c.closeSpeed, easing:c.closeEasing, step:this.step, complete:a._afterZoomOut})) : b.fadeOut("fade" === c.closeEffect ? c.closeSpeed : 0, a._afterZoomOut)
    }, changeIn:function () {
        var b = a.wrap, c = a.current, d;
        "elastic" === c.nextEffect ? (d = a._getPosition(!0), d.opacity = 0, d.top = parseInt(d.top, 10) - 200 + "px", b.css(d).show().animate({opacity:1, top:"+=200px"}, {duration:c.nextSpeed, easing:c.nextEasing, complete:a._afterZoomIn})) : (b.css(a._getPosition()),
            "fade" === c.nextEffect ? b.hide().fadeIn(c.nextSpeed, a._afterZoomIn) : (b.show(), a._afterZoomIn()))
    }, changeOut:function () {
        var b = a.wrap, c = a.current, d = function () {
            e(this).trigger("onReset").remove()
        };
        b.removeClass("fancybox-opened");
        "elastic" === c.prevEffect ? b.animate({opacity:0, top:"+=200px"}, {duration:c.prevSpeed, easing:c.prevEasing, complete:d}) : b.fadeOut("fade" === c.prevEffect ? c.prevSpeed : 0, d)
    }};
    a.helpers.overlay = {overlay:null, update:function () {
        var a, c;
        this.overlay.width(0).height(0);
        e.browser.msie ? (a = Math.max(m.documentElement.scrollWidth,
            m.body.scrollWidth), c = Math.max(m.documentElement.offsetWidth, m.body.offsetWidth), a = a < c ? l.width() : a) : a = q.width();
        this.overlay.width(a).height(q.height())
    }, beforeShow:function (b) {
        this.overlay || (b = e.extend(!0, {speedIn:"fast", closeClick:!0, opacity:1, css:{background:"black"}}, b), this.overlay = e('<div id="fancybox-overlay"></div>').css(b.css).appendTo("body"), this.update(), b.closeClick && this.overlay.bind("click.fb", a.close), l.bind("resize.fb", e.proxy(this.update, this)), this.overlay.fadeTo(b.speedIn, b.opacity))
    },
        onUpdate:function () {
            this.update()
        }, afterClose:function (a) {
            this.overlay && this.overlay.fadeOut(a.speedOut || 0, function () {
                e(this).remove()
            });
            this.overlay = null
        }};
    a.helpers.title = {beforeShow:function (b) {
        var c;
        if (c = a.current.title)c = e('<div class="fancybox-title fancybox-title-' + b.type + '-wrap">' + c + "</div>").appendTo("body"), "float" === b.type && (c.width(c.width()), c.wrapInner('<span class="child"></span>'), a.current.margin[2] += Math.abs(parseInt(c.css("margin-bottom"), 10))), c.appendTo("over" === b.type ? a.inner :
            "outside" === b.type ? a.wrap : a.outer)
    }};
    e.fn.fancybox = function (b) {
        var c = e(this), d = this.selector || "", g, f = function (f) {
            var h = this, i = "rel", j = h[i], l = g;
            !f.ctrlKey && !f.altKey && !f.shiftKey && !f.metaKey && (f.preventDefault(), j || (i = "data-fancybox-group", j = e(h).attr("data-fancybox-group")), j && "" !== j && "nofollow" !== j && (h = d.length ? e(d) : c, h = h.filter("[" + i + '="' + j + '"]'), l = h.index(this)), b.index = l, a.open(h, b))
        }, b = b || {};
        g = b.index || 0;
        d ? q.undelegate(d, "click.fb-start").delegate(d, "click.fb-start", f) : c.unbind("click.fb-start").bind("click.fb-start",
            f);
        return this
    }
})(window, document, jQuery);